Controller performance testing is a very intensive undertaking. If testing is approached unsystematically and inefficiently, inaccurate results will preclude proper calibration and modification of a controller. It normally takes a user a vast amount of time to set testing parameters, perform a test, and sift through all controller performance test results. Many times these results are not broken down into successful and unsuccessful tests. A user has the tedious task of deciding which test results are unsuccessful to help guide the user in modifying the controller for further accurate testing of the modified controller's quality performance.
To ensure this accuracy, many software-in-the-loop (SIL) simulation and testing solutions exist for early testing of the functionality and reliability of a controller algorithm. Most SIL simulations, however, require constant attention from a user, both before testing a controller's quality and after testing a controller's quality. The user performs the tedious task of generating a large number of test cases and test runs, and re-starting the simulation environment following either memory or simulation platform failure. When data is generated during controller testing, a user must visualize and manipulate a vast quantity of data produced, both to review and process all generated controller test data to locate deficiencies in controller behavior. Once reviewed and processed, the user must determine how to re-set the controller's test run to further investigate possibilities for correcting located deficiencies, with this tedious review process repeating for every controller quality test. Further, all generated test data must be stored for a user to review, thus requiring large volume memory storage. Current SIL solutions for testing a controller's performance are labor intensive for developing a controller's design and for controller synthesis testing, performance evaluation, and tuning evaluations.
Testing of the controller takes a tremendous amount of time invested in simulations, data collection, manipulation and data analysis. Therefore, a need exists for an improved tool and technique for early testing of a synthesized controller or a controller-in-development, in a less labor intensive and time consuming fashion, as will be discussed in greater detail herein.